var menuSlider = function() {
    var menu,slide,current,timer = null, timeout = 300;
    return{
        init:function(menuid, slideid) {
            menu = $('#' + menuid);
            slide = $('#' + slideid);
            $('li', menu).each(function(index) {
                var li = $(this);
                var val;
                if ($.prop) {
                    val = li.prop('value');
                } else {
                    val = li.attr('value');
                }
                if ( val == 1) {
                    current = li;
                    slide.css({
                        'left': current.position().left + "px",
                        'width': current.width() + "px"
                    });
                }
                li.hover(function(evt) {
                            timer = setTimeout(function() {
                                slide.animate({'left': li.position().left + "px",
                                    'width': li.width() + "px"},
                                        Math.abs(li.position().left - slide.position().left) * 2);
                            }, timeout);
                        }, function(evt) {
                            timer != null && clearTimeout(timer);
                        });
            });
            menu.hover(null,
                    function(evt) {
                        timer != null && clearTimeout(timer);
                        slide.animate({'left': current.position().left + "px",
                            'width': current.width() + "px"}, "fast");
                    });
        }
    };
}();
